import { ref } from 'vue'
import { defineStore } from 'pinia'
import { loginApi } from '@/apis/login'
import { useCartStore } from './carStore'
import { mergeCartAPI } from '@/apis/detail'

export const useUserStore = defineStore('user', () => {
  const userInfo = ref({})
  const cartStore = useCartStore()
  const getUserInfo = async({account,password}) => {
    const res = await loginApi({account,password})
    userInfo.value = res.result
    await mergeCartAPI(cartStore.cartList.map(item =>{
      return {
        skuId: item.skuId,
        selected:item.selected,
        count:item.count
      }
    }))
    cartStore.updateNewList()
  }
  const clearUser = () => {

    userInfo.value = {}
    cartStore.clearCart()
  }

  return {userInfo,getUserInfo,clearUser}
}, {
  persist: true,
})
